
main:

	pushq	%rbp
	
	movq	%rsp, %rbp
	
	subq	$1872, %rsp
	movl	%edi, -1860(%rbp)
	movq	%rsi, -1872(%rbp)
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	leaq	-1552(%rbp), %rax
	movl	$512, %edx
	movl	$1, %esi
	movq	%rax, %rdi
	call	memset
	leaq	-1552(%rbp), %rax
	movl	$512, %edx
	movl	$0, %esi
	movq	%rax, %rdi
	call	memset
	leaq	-1552(%rbp), %rax
	movl	$512, %edx
	movl	$0, %esi
	movq	%rax, %rdi
	call	memset
	leaq	-1584(%rbp), %rax
	movl	$32, %edx
	movl	$0, %esi
	movq	%rax, %rdi
	call	memset
	leaq	-1840(%rbp), %rdx
	leaq	-1584(%rbp), %rax
	movl	$256, %esi
	movq	%rax, %rdi
	call	AES_set_encrypt_key
	movl	$0, -1848(%rbp)
	jmp	

	movl	-1848(%rbp), %eax
	cltq
	leaq	-1040(%rbp), %rdx
	leaq	(%rdx,%rax), %rsi
	movl	-1848(%rbp), %eax
	cltq
	leaq	-1552(%rbp), %rdx
	leaq	(%rdx,%rax), %rcx
	leaq	-1840(%rbp), %rax
	movq	%rax, %rdx
	movq	%rcx, %rdi
	call	AES_encrypt
	addl	$16, -1848(%rbp)

	movl	-1848(%rbp), %eax
	cmpl	$511, %eax
	jbe	
	leaq	-1840(%rbp), %rdx
	leaq	-1584(%rbp), %rax
	movl	$256, %esi
	movq	%rax, %rdi
	call	AES_set_decrypt_key
	movl	$0, -1844(%rbp)
	jmp	

	movl	-1844(%rbp), %eax
	cltq
	leaq	-528(%rbp), %rdx
	leaq	(%rdx,%rax), %rsi
	movl	-1844(%rbp), %eax
	cltq
	leaq	-1040(%rbp), %rdx
	leaq	(%rdx,%rax), %rcx
	leaq	-1840(%rbp), %rax
	movq	%rax, %rdx
	movq	%rcx, %rdi
	call	AES_decrypt
	addl	$16, -1844(%rbp)

	movl	-1844(%rbp), %eax
	cmpl	$511, %eax
	jbe	
	leaq	-528(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	movl	$512, %edx
	movq	%rcx, %rsi
	movq	%rax, %rdi
	call	memcmp
	testl	%eax, %eax
	jne	
	movl	$.LC0, %edi
	call	puts
	jmp	

	movl	$.LC1, %edi
	call	puts
	movl	$0, %eax
	movq	-8(%rbp), %rcx
	xorq	%fs:40, %rcx
	je	
	call	__stack_chk_fail

	leave

